-
Notifications
You must be signed in to change notification settings - Fork 20
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Fixes for ARM 32/64 #49
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM, just a typo
…me software Add missing dependency for RPM
Co-authored-by: Pablo Baeyens <[email protected]>
a852151
to
ff9a575
Compare
This reverts commit 8fdd209.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM, left a couple of nits but feel free to ignore them
BASE_IMAGE: arm64v8/centos:7 | ||
BASE_IMAGE: amazonlinux:2.0.20181114 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Why did we change the base image? (just for future reference)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Initially it was amazonlinux
, see #21. Amazon Linux however, doesn't provide 32 bit versions of their image, so we switched to CentOS 7 (which is what Amazon Linux is supposed to be based on I think). However, CentOS 7 is quite old and ships with GCC 4.8.5 - which causes issues when trying to build rtloader
.
Hence we had two options:
- Install a newer GCC on CentOS 7
- Revert to the Amazon Linux image for 64 bit builds
We chose the latter because we don't build rtloader
for 32 bit ARM, so it's simpler to revert to the 'known to work' image.
RUN curl "https://bootstrap.pypa.io/get-pip.py" | python2.7 - pip==${DD_PIP_VERSION} setuptools==${DD_SETUPTOOLS_VERSION} | ||
RUN pip install invoke distro==1.4.0 awscli==1.16.240 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Could we use Python 3 here? Base image doesn't have it so it needs to be installed. Not a blocker but it would useful if we ever need a Python 3 only package.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Good point, I think we could have python 3 in this image, but I think this should be addressed as a separate PR
Co-authored-by: Pablo Baeyens <[email protected]>
This PR introduces a couple of fixes for ARM32/64:
GIMME_ARCH
so that go builds don't fail on 64 bit ARM buildsentrypoint.sh
to useGIMME_ARCH
for ARM builds so thateval "$(gimme)"
finds the correct go binary folderfakearmv7l
LD_PRELOAD library to patchuname
at runtime to return architecturearmv7l
for RPM 32 bit build